" Input: {
(dict) - pre-loaded dict with characteristics that will be flattened
or
(flat_dict) - pre-loaded flat dict with characteristics
USE 'characteristic_list' in dict!
dict_to_add - data to analyze and add to dict
(dict_to_compare) - flat dict to calculate improvements
(process_multi_keys) - list of keys (starts with) to perform stat analysis on flat array,
by default ['##characteristics#*', '##features#*' '##choices#*'],
if empty, no stat analysis
(skip_stat_analysis) - if 'yes', just flatten array and add #min
}
Output: {
return - return code = 0, if successful
> 0, if error
(error) - error text if return > 0
dict_flat - updated and flattened original dictionary
max_range_percent - max % range in float/int data (useful to record points with unusual behavior)
min - 'yes', if one of monitored values reached min
max - 'yes', if one of monitored values reached max
}
"